package com.shycloud.mido.homework.api.vo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.Date;
import lombok.Data;

@Data
public class MidoHomeworkMainVOMini {

	/** 已经完成的次数/分数 */
	private Integer okCountOrScore = 0;
	/** 教师姓名 */
	private String teacherName;
	/** 作业的曲目是否是vip权限 */
	private Boolean isVip;
	/** 录音地址 */
	private String recordingSrc;
	/** 曲集封面 */
	private String collectionImg;
	/** 曲集ID */
	private String collectionId;

	@JsonFormat(shape = JsonFormat.Shape.STRING)
	@TableId(value = "id", type = IdType.AUTO)
	private Long id;
	/** 学生 ID */
	@TableField(value = "student_id")
	private String studentId;
	/** 教师 ID */
	@TableField(value = "teacher_id")
	private String teacherId;
	/** 曲目ID */
	@TableField(value = "music_id")
	private Integer musicId;
	/** 曲目名称 */
	@TableField(value = "music_name")
	private String musicName;
	/** 弹奏模式(0-视听,1-识谱,2-纠错) */
	@TableField(value = "playing_mode")
	private String playingMode;
	/** 手势(0-双手,1-左手,2-右手) */
	@TableField(value = "gesture")
	private String gesture;
	/** 开始段落 */
	@TableField(value = "start_para")
	private Integer startPara;
	/** 结束段落 */
	@TableField(value = "end_para")
	private Integer endPara;
	/** 开始小节 */
	@TableField(value = "start_rhythm")
	private Integer startRhythm;
	/** 结束小节 */
	@TableField(value = "end_rhythm")
	private Integer endRhythm;
	/** 是否反复(0-不反复,1-反复) */
	@TableField(value = "is_repeat")
	private String isRepeat;
	/** 速度 */
	@TableField(value = "speed")
	private Integer speed;
	/** 难度 */
	@TableField(value = "difficulty")
	private Integer difficulty;
	/** 开始日期 */
	@TableField(value = "start_date")
	private Date startDate;
	/** 作业状态(0-未开始,1-未完成,2-已完成) */
	@TableField(value = "status")
	private String status;
	/** 目标分数(如果视听则为视听次数) */
	@TableField(value = "target_score")
	private Integer targetScore;
	/** 创建时间 */
	@TableField(value = "create_time")
	private Date createTime;
	/** 提醒标识 0-未提醒 1-提醒 */
	@TableField(value = "ding")
	private String ding = "0";
	/** 是否是家长模式 0-非家长模式 1-家长模式 */
	@TableField(value = "is_parent_mode")
	private String isParentMode;
	/** 逻辑删除 */
	@TableField(value = "del_flag")
	private String delFlag;
	/** 画笔参数 */
	@TableField(value = "params_json_pen")
	private String paramsJsonPen;
	/** 文字参数 */
	@TableField(value = "params_json_font")
	private String paramsJsonFont;
	/** 0代表非迁移数据，1代表迁移数据 */
	@TableField(value = "is_transfer_data")
	private String isTransferData;
	/** 迁移时间 */
	@TableField(value = "transfer_time")
	private Date transferTime;
	/** 组别ID */
	@TableField(value = "group_id")
	@JsonFormat(shape = JsonFormat.Shape.STRING)
	private Long groupId;
	/** 是否辅导了此作业 */
	@TableField(value = "is_help")
	private String isHelp = "0";
	/** 曲目时长 */
	@TableField(value = "music_length")
	private String musicLength;
	/** 曲目所属曲集封面 URL */
	@TableField(value = "img")
	private String img;
	/** 最高分第几次 */
	@TableField(value = "best_num")
	private Integer bestNum;
	/** 最佳第几次的弹奏 */
	@TableField(value = "best_num_complate_id")
	private Integer bestNumComplateId;
	/** 最高分 */
	@TableField(value = "best_score")
	private Integer bestScore;
	/** 作业视频地址 */
	@TableField(value = "video_url")
	private String videoUrl;

	public Boolean getIsVip() {
		return isVip;
	}


	public void setIsVip(String isVip) {

		if ("1".equals(isVip)) {
			this.isVip = true;
		} else {
			this.isVip = false;
		}
	}

	/** 前面分组的总次数 */
	private Integer targetGroupCount;
	/** 前面分组的完成次数 */
	private Integer okGroupCount;

	private String groupIdAndPlayingMode;

	public String getGroupIdAndPlayingMode() {
		return String.valueOf(this.getGroupId()) + "_" + this.getPlayingMode();
	}


}
